package com.ruoyi.system.handler;

import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.fasterxml.jackson.core.type.TypeReference;
import com.ruoyi.system.bo.ServiceUserBo;

import java.io.IOException;
import java.util.List;

/**
 * 自定义复杂类型处理器<br/>
 * 不要问我为什么要重写 parse 因为顶层父类是无法获取到准确的待转换复杂返回类型数据
 *
 * @author Administrator
 * @date 2024/02/26
 */
public class ServiceUserFileTypeHandler extends JacksonTypeHandler {

    public ServiceUserFileTypeHandler(Class<?> type) {
        super(type);
    }

    @Override
    public Object parse(String json) {
        try {
            return getObjectMapper().readValue(json, new TypeReference<List<ServiceUserBo>>() {
            });
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}
